package com.crm.model.entity.contractManager;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

public class CustomerContractExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public CustomerContractExample() {
        oredCriteria = new ArrayList<>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        protected void addCriterionForJDBCDate(String condition, Date value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value.getTime()), property);
        }

        protected void addCriterionForJDBCDate(String condition, List<Date> values, String property) {
            if (values == null || values.size() == 0) {
                throw new RuntimeException("Value list for " + property + " cannot be null or empty");
            }
            List<java.sql.Date> dateList = new ArrayList<>();
            Iterator<Date> iter = values.iterator();
            while (iter.hasNext()) {
                dateList.add(new java.sql.Date(iter.next().getTime()));
            }
            addCriterion(condition, dateList, property);
        }

        protected void addCriterionForJDBCDate(String condition, Date value1, Date value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            addCriterion(condition, new java.sql.Date(value1.getTime()), new java.sql.Date(value2.getTime()), property);
        }

        public Criteria andContractIdIsNull() {
            addCriterion("contract_id is null");
            return (Criteria) this;
        }

        public Criteria andContractIdIsNotNull() {
            addCriterion("contract_id is not null");
            return (Criteria) this;
        }

        public Criteria andContractIdEqualTo(String value) {
            addCriterion("contract_id =", value, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdNotEqualTo(String value) {
            addCriterion("contract_id <>", value, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdGreaterThan(String value) {
            addCriterion("contract_id >", value, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdGreaterThanOrEqualTo(String value) {
            addCriterion("contract_id >=", value, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdLessThan(String value) {
            addCriterion("contract_id <", value, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdLessThanOrEqualTo(String value) {
            addCriterion("contract_id <=", value, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdLike(String value) {
            addCriterion("contract_id like", value, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdNotLike(String value) {
            addCriterion("contract_id not like", value, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdIn(List<String> values) {
            addCriterion("contract_id in", values, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdNotIn(List<String> values) {
            addCriterion("contract_id not in", values, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdBetween(String value1, String value2) {
            addCriterion("contract_id between", value1, value2, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractIdNotBetween(String value1, String value2) {
            addCriterion("contract_id not between", value1, value2, "contractId");
            return (Criteria) this;
        }

        public Criteria andContractNumberIsNull() {
            addCriterion("contract_number is null");
            return (Criteria) this;
        }

        public Criteria andContractNumberIsNotNull() {
            addCriterion("contract_number is not null");
            return (Criteria) this;
        }

        public Criteria andContractNumberEqualTo(String value) {
            addCriterion("contract_number =", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberNotEqualTo(String value) {
            addCriterion("contract_number <>", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberGreaterThan(String value) {
            addCriterion("contract_number >", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberGreaterThanOrEqualTo(String value) {
            addCriterion("contract_number >=", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberLessThan(String value) {
            addCriterion("contract_number <", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberLessThanOrEqualTo(String value) {
            addCriterion("contract_number <=", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberLike(String value) {
            addCriterion("contract_number like", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberNotLike(String value) {
            addCriterion("contract_number not like", value, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberIn(List<String> values) {
            addCriterion("contract_number in", values, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberNotIn(List<String> values) {
            addCriterion("contract_number not in", values, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberBetween(String value1, String value2) {
            addCriterion("contract_number between", value1, value2, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractNumberNotBetween(String value1, String value2) {
            addCriterion("contract_number not between", value1, value2, "contractNumber");
            return (Criteria) this;
        }

        public Criteria andContractStatusIsNull() {
            addCriterion("contract_status is null");
            return (Criteria) this;
        }

        public Criteria andContractStatusIsNotNull() {
            addCriterion("contract_status is not null");
            return (Criteria) this;
        }

        public Criteria andContractStatusEqualTo(String value) {
            addCriterion("contract_status =", value, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusNotEqualTo(String value) {
            addCriterion("contract_status <>", value, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusGreaterThan(String value) {
            addCriterion("contract_status >", value, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusGreaterThanOrEqualTo(String value) {
            addCriterion("contract_status >=", value, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusLessThan(String value) {
            addCriterion("contract_status <", value, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusLessThanOrEqualTo(String value) {
            addCriterion("contract_status <=", value, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusLike(String value) {
            addCriterion("contract_status like", value, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusNotLike(String value) {
            addCriterion("contract_status not like", value, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusIn(List<String> values) {
            addCriterion("contract_status in", values, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusNotIn(List<String> values) {
            addCriterion("contract_status not in", values, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusBetween(String value1, String value2) {
            addCriterion("contract_status between", value1, value2, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractStatusNotBetween(String value1, String value2) {
            addCriterion("contract_status not between", value1, value2, "contractStatus");
            return (Criteria) this;
        }

        public Criteria andContractTypeIsNull() {
            addCriterion("contract_type is null");
            return (Criteria) this;
        }

        public Criteria andContractTypeIsNotNull() {
            addCriterion("contract_type is not null");
            return (Criteria) this;
        }

        public Criteria andContractTypeEqualTo(String value) {
            addCriterion("contract_type =", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeNotEqualTo(String value) {
            addCriterion("contract_type <>", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeGreaterThan(String value) {
            addCriterion("contract_type >", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeGreaterThanOrEqualTo(String value) {
            addCriterion("contract_type >=", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeLessThan(String value) {
            addCriterion("contract_type <", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeLessThanOrEqualTo(String value) {
            addCriterion("contract_type <=", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeLike(String value) {
            addCriterion("contract_type like", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeNotLike(String value) {
            addCriterion("contract_type not like", value, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeIn(List<String> values) {
            addCriterion("contract_type in", values, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeNotIn(List<String> values) {
            addCriterion("contract_type not in", values, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeBetween(String value1, String value2) {
            addCriterion("contract_type between", value1, value2, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractTypeNotBetween(String value1, String value2) {
            addCriterion("contract_type not between", value1, value2, "contractType");
            return (Criteria) this;
        }

        public Criteria andContractRenewalIsNull() {
            addCriterion("contract_renewal is null");
            return (Criteria) this;
        }

        public Criteria andContractRenewalIsNotNull() {
            addCriterion("contract_renewal is not null");
            return (Criteria) this;
        }

        public Criteria andContractRenewalEqualTo(String value) {
            addCriterion("contract_renewal =", value, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalNotEqualTo(String value) {
            addCriterion("contract_renewal <>", value, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalGreaterThan(String value) {
            addCriterion("contract_renewal >", value, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalGreaterThanOrEqualTo(String value) {
            addCriterion("contract_renewal >=", value, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalLessThan(String value) {
            addCriterion("contract_renewal <", value, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalLessThanOrEqualTo(String value) {
            addCriterion("contract_renewal <=", value, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalLike(String value) {
            addCriterion("contract_renewal like", value, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalNotLike(String value) {
            addCriterion("contract_renewal not like", value, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalIn(List<String> values) {
            addCriterion("contract_renewal in", values, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalNotIn(List<String> values) {
            addCriterion("contract_renewal not in", values, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalBetween(String value1, String value2) {
            addCriterion("contract_renewal between", value1, value2, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andContractRenewalNotBetween(String value1, String value2) {
            addCriterion("contract_renewal not between", value1, value2, "contractRenewal");
            return (Criteria) this;
        }

        public Criteria andCustomerIdIsNull() {
            addCriterion("customer_id is null");
            return (Criteria) this;
        }

        public Criteria andCustomerIdIsNotNull() {
            addCriterion("customer_id is not null");
            return (Criteria) this;
        }

        public Criteria andCustomerIdEqualTo(String value) {
            addCriterion("customer_id =", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotEqualTo(String value) {
            addCriterion("customer_id <>", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdGreaterThan(String value) {
            addCriterion("customer_id >", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdGreaterThanOrEqualTo(String value) {
            addCriterion("customer_id >=", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdLessThan(String value) {
            addCriterion("customer_id <", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdLessThanOrEqualTo(String value) {
            addCriterion("customer_id <=", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdLike(String value) {
            addCriterion("customer_id like", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotLike(String value) {
            addCriterion("customer_id not like", value, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdIn(List<String> values) {
            addCriterion("customer_id in", values, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotIn(List<String> values) {
            addCriterion("customer_id not in", values, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdBetween(String value1, String value2) {
            addCriterion("customer_id between", value1, value2, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerIdNotBetween(String value1, String value2) {
            addCriterion("customer_id not between", value1, value2, "customerId");
            return (Criteria) this;
        }

        public Criteria andCustomerNameIsNull() {
            addCriterion("customer_name is null");
            return (Criteria) this;
        }

        public Criteria andCustomerNameIsNotNull() {
            addCriterion("customer_name is not null");
            return (Criteria) this;
        }

        public Criteria andCustomerNameEqualTo(String value) {
            addCriterion("customer_name =", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameNotEqualTo(String value) {
            addCriterion("customer_name <>", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameGreaterThan(String value) {
            addCriterion("customer_name >", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameGreaterThanOrEqualTo(String value) {
            addCriterion("customer_name >=", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameLessThan(String value) {
            addCriterion("customer_name <", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameLessThanOrEqualTo(String value) {
            addCriterion("customer_name <=", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameLike(String value) {
            addCriterion("customer_name like", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameNotLike(String value) {
            addCriterion("customer_name not like", value, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameIn(List<String> values) {
            addCriterion("customer_name in", values, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameNotIn(List<String> values) {
            addCriterion("customer_name not in", values, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameBetween(String value1, String value2) {
            addCriterion("customer_name between", value1, value2, "customerName");
            return (Criteria) this;
        }

        public Criteria andCustomerNameNotBetween(String value1, String value2) {
            addCriterion("customer_name not between", value1, value2, "customerName");
            return (Criteria) this;
        }

        public Criteria andContractStartDateIsNull() {
            addCriterion("contract_start_date is null");
            return (Criteria) this;
        }

        public Criteria andContractStartDateIsNotNull() {
            addCriterion("contract_start_date is not null");
            return (Criteria) this;
        }

        public Criteria andContractStartDateEqualTo(Date value) {
            addCriterionForJDBCDate("contract_start_date =", value, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractStartDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("contract_start_date <>", value, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractStartDateGreaterThan(Date value) {
            addCriterionForJDBCDate("contract_start_date >", value, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractStartDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("contract_start_date >=", value, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractStartDateLessThan(Date value) {
            addCriterionForJDBCDate("contract_start_date <", value, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractStartDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("contract_start_date <=", value, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractStartDateIn(List<Date> values) {
            addCriterionForJDBCDate("contract_start_date in", values, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractStartDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("contract_start_date not in", values, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractStartDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("contract_start_date between", value1, value2, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractStartDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("contract_start_date not between", value1, value2, "contractStartDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateIsNull() {
            addCriterion("contract_end_date is null");
            return (Criteria) this;
        }

        public Criteria andContractEndDateIsNotNull() {
            addCriterion("contract_end_date is not null");
            return (Criteria) this;
        }

        public Criteria andContractEndDateEqualTo(Date value) {
            addCriterionForJDBCDate("contract_end_date =", value, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("contract_end_date <>", value, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateGreaterThan(Date value) {
            addCriterionForJDBCDate("contract_end_date >", value, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("contract_end_date >=", value, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateLessThan(Date value) {
            addCriterionForJDBCDate("contract_end_date <", value, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("contract_end_date <=", value, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateIn(List<Date> values) {
            addCriterionForJDBCDate("contract_end_date in", values, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("contract_end_date not in", values, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("contract_end_date between", value1, value2, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andContractEndDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("contract_end_date not between", value1, value2, "contractEndDate");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeIsNull() {
            addCriterion("customer_type is null");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeIsNotNull() {
            addCriterion("customer_type is not null");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeEqualTo(String value) {
            addCriterion("customer_type =", value, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeNotEqualTo(String value) {
            addCriterion("customer_type <>", value, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeGreaterThan(String value) {
            addCriterion("customer_type >", value, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeGreaterThanOrEqualTo(String value) {
            addCriterion("customer_type >=", value, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeLessThan(String value) {
            addCriterion("customer_type <", value, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeLessThanOrEqualTo(String value) {
            addCriterion("customer_type <=", value, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeLike(String value) {
            addCriterion("customer_type like", value, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeNotLike(String value) {
            addCriterion("customer_type not like", value, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeIn(List<String> values) {
            addCriterion("customer_type in", values, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeNotIn(List<String> values) {
            addCriterion("customer_type not in", values, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeBetween(String value1, String value2) {
            addCriterion("customer_type between", value1, value2, "customerType");
            return (Criteria) this;
        }

        public Criteria andCustomerTypeNotBetween(String value1, String value2) {
            addCriterion("customer_type not between", value1, value2, "customerType");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckIsNull() {
            addCriterion("whether_check is null");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckIsNotNull() {
            addCriterion("whether_check is not null");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckEqualTo(String value) {
            addCriterion("whether_check =", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckNotEqualTo(String value) {
            addCriterion("whether_check <>", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckGreaterThan(String value) {
            addCriterion("whether_check >", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckGreaterThanOrEqualTo(String value) {
            addCriterion("whether_check >=", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckLessThan(String value) {
            addCriterion("whether_check <", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckLessThanOrEqualTo(String value) {
            addCriterion("whether_check <=", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckLike(String value) {
            addCriterion("whether_check like", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckNotLike(String value) {
            addCriterion("whether_check not like", value, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckIn(List<String> values) {
            addCriterion("whether_check in", values, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckNotIn(List<String> values) {
            addCriterion("whether_check not in", values, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckBetween(String value1, String value2) {
            addCriterion("whether_check between", value1, value2, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andWhetherCheckNotBetween(String value1, String value2) {
            addCriterion("whether_check not between", value1, value2, "whetherCheck");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusIsNull() {
            addCriterion("commission_status is null");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusIsNotNull() {
            addCriterion("commission_status is not null");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusEqualTo(String value) {
            addCriterion("commission_status =", value, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusNotEqualTo(String value) {
            addCriterion("commission_status <>", value, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusGreaterThan(String value) {
            addCriterion("commission_status >", value, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusGreaterThanOrEqualTo(String value) {
            addCriterion("commission_status >=", value, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusLessThan(String value) {
            addCriterion("commission_status <", value, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusLessThanOrEqualTo(String value) {
            addCriterion("commission_status <=", value, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusLike(String value) {
            addCriterion("commission_status like", value, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusNotLike(String value) {
            addCriterion("commission_status not like", value, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusIn(List<String> values) {
            addCriterion("commission_status in", values, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusNotIn(List<String> values) {
            addCriterion("commission_status not in", values, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusBetween(String value1, String value2) {
            addCriterion("commission_status between", value1, value2, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andCommissionStatusNotBetween(String value1, String value2) {
            addCriterion("commission_status not between", value1, value2, "commissionStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusIsNull() {
            addCriterion("contract_approval_status is null");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusIsNotNull() {
            addCriterion("contract_approval_status is not null");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusEqualTo(String value) {
            addCriterion("contract_approval_status =", value, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusNotEqualTo(String value) {
            addCriterion("contract_approval_status <>", value, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusGreaterThan(String value) {
            addCriterion("contract_approval_status >", value, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusGreaterThanOrEqualTo(String value) {
            addCriterion("contract_approval_status >=", value, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusLessThan(String value) {
            addCriterion("contract_approval_status <", value, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusLessThanOrEqualTo(String value) {
            addCriterion("contract_approval_status <=", value, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusLike(String value) {
            addCriterion("contract_approval_status like", value, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusNotLike(String value) {
            addCriterion("contract_approval_status not like", value, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusIn(List<String> values) {
            addCriterion("contract_approval_status in", values, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusNotIn(List<String> values) {
            addCriterion("contract_approval_status not in", values, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusBetween(String value1, String value2) {
            addCriterion("contract_approval_status between", value1, value2, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractApprovalStatusNotBetween(String value1, String value2) {
            addCriterion("contract_approval_status not between", value1, value2, "contractApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusIsNull() {
            addCriterion("contract_review_status is null");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusIsNotNull() {
            addCriterion("contract_review_status is not null");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusEqualTo(String value) {
            addCriterion("contract_review_status =", value, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusNotEqualTo(String value) {
            addCriterion("contract_review_status <>", value, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusGreaterThan(String value) {
            addCriterion("contract_review_status >", value, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusGreaterThanOrEqualTo(String value) {
            addCriterion("contract_review_status >=", value, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusLessThan(String value) {
            addCriterion("contract_review_status <", value, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusLessThanOrEqualTo(String value) {
            addCriterion("contract_review_status <=", value, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusLike(String value) {
            addCriterion("contract_review_status like", value, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusNotLike(String value) {
            addCriterion("contract_review_status not like", value, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusIn(List<String> values) {
            addCriterion("contract_review_status in", values, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusNotIn(List<String> values) {
            addCriterion("contract_review_status not in", values, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusBetween(String value1, String value2) {
            addCriterion("contract_review_status between", value1, value2, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractReviewStatusNotBetween(String value1, String value2) {
            addCriterion("contract_review_status not between", value1, value2, "contractReviewStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusIsNull() {
            addCriterion("payment_status is null");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusIsNotNull() {
            addCriterion("payment_status is not null");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusEqualTo(String value) {
            addCriterion("payment_status =", value, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusNotEqualTo(String value) {
            addCriterion("payment_status <>", value, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusGreaterThan(String value) {
            addCriterion("payment_status >", value, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusGreaterThanOrEqualTo(String value) {
            addCriterion("payment_status >=", value, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusLessThan(String value) {
            addCriterion("payment_status <", value, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusLessThanOrEqualTo(String value) {
            addCriterion("payment_status <=", value, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusLike(String value) {
            addCriterion("payment_status like", value, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusNotLike(String value) {
            addCriterion("payment_status not like", value, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusIn(List<String> values) {
            addCriterion("payment_status in", values, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusNotIn(List<String> values) {
            addCriterion("payment_status not in", values, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusBetween(String value1, String value2) {
            addCriterion("payment_status between", value1, value2, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andPaymentStatusNotBetween(String value1, String value2) {
            addCriterion("payment_status not between", value1, value2, "paymentStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusIsNull() {
            addCriterion("special_approval_status is null");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusIsNotNull() {
            addCriterion("special_approval_status is not null");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusEqualTo(String value) {
            addCriterion("special_approval_status =", value, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusNotEqualTo(String value) {
            addCriterion("special_approval_status <>", value, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusGreaterThan(String value) {
            addCriterion("special_approval_status >", value, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusGreaterThanOrEqualTo(String value) {
            addCriterion("special_approval_status >=", value, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusLessThan(String value) {
            addCriterion("special_approval_status <", value, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusLessThanOrEqualTo(String value) {
            addCriterion("special_approval_status <=", value, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusLike(String value) {
            addCriterion("special_approval_status like", value, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusNotLike(String value) {
            addCriterion("special_approval_status not like", value, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusIn(List<String> values) {
            addCriterion("special_approval_status in", values, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusNotIn(List<String> values) {
            addCriterion("special_approval_status not in", values, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusBetween(String value1, String value2) {
            addCriterion("special_approval_status between", value1, value2, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andSpecialApprovalStatusNotBetween(String value1, String value2) {
            addCriterion("special_approval_status not between", value1, value2, "specialApprovalStatus");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretIsNull() {
            addCriterion("whether_keep_secret is null");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretIsNotNull() {
            addCriterion("whether_keep_secret is not null");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretEqualTo(String value) {
            addCriterion("whether_keep_secret =", value, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretNotEqualTo(String value) {
            addCriterion("whether_keep_secret <>", value, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretGreaterThan(String value) {
            addCriterion("whether_keep_secret >", value, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretGreaterThanOrEqualTo(String value) {
            addCriterion("whether_keep_secret >=", value, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretLessThan(String value) {
            addCriterion("whether_keep_secret <", value, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretLessThanOrEqualTo(String value) {
            addCriterion("whether_keep_secret <=", value, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretLike(String value) {
            addCriterion("whether_keep_secret like", value, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretNotLike(String value) {
            addCriterion("whether_keep_secret not like", value, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretIn(List<String> values) {
            addCriterion("whether_keep_secret in", values, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretNotIn(List<String> values) {
            addCriterion("whether_keep_secret not in", values, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretBetween(String value1, String value2) {
            addCriterion("whether_keep_secret between", value1, value2, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andWhetherKeepSecretNotBetween(String value1, String value2) {
            addCriterion("whether_keep_secret not between", value1, value2, "whetherKeepSecret");
            return (Criteria) this;
        }

        public Criteria andLockedStateIsNull() {
            addCriterion("locked_state is null");
            return (Criteria) this;
        }

        public Criteria andLockedStateIsNotNull() {
            addCriterion("locked_state is not null");
            return (Criteria) this;
        }

        public Criteria andLockedStateEqualTo(String value) {
            addCriterion("locked_state =", value, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateNotEqualTo(String value) {
            addCriterion("locked_state <>", value, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateGreaterThan(String value) {
            addCriterion("locked_state >", value, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateGreaterThanOrEqualTo(String value) {
            addCriterion("locked_state >=", value, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateLessThan(String value) {
            addCriterion("locked_state <", value, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateLessThanOrEqualTo(String value) {
            addCriterion("locked_state <=", value, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateLike(String value) {
            addCriterion("locked_state like", value, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateNotLike(String value) {
            addCriterion("locked_state not like", value, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateIn(List<String> values) {
            addCriterion("locked_state in", values, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateNotIn(List<String> values) {
            addCriterion("locked_state not in", values, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateBetween(String value1, String value2) {
            addCriterion("locked_state between", value1, value2, "lockedState");
            return (Criteria) this;
        }

        public Criteria andLockedStateNotBetween(String value1, String value2) {
            addCriterion("locked_state not between", value1, value2, "lockedState");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidIsNull() {
            addCriterion("whether_balance_paid is null");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidIsNotNull() {
            addCriterion("whether_balance_paid is not null");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidEqualTo(String value) {
            addCriterion("whether_balance_paid =", value, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidNotEqualTo(String value) {
            addCriterion("whether_balance_paid <>", value, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidGreaterThan(String value) {
            addCriterion("whether_balance_paid >", value, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidGreaterThanOrEqualTo(String value) {
            addCriterion("whether_balance_paid >=", value, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidLessThan(String value) {
            addCriterion("whether_balance_paid <", value, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidLessThanOrEqualTo(String value) {
            addCriterion("whether_balance_paid <=", value, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidLike(String value) {
            addCriterion("whether_balance_paid like", value, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidNotLike(String value) {
            addCriterion("whether_balance_paid not like", value, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidIn(List<String> values) {
            addCriterion("whether_balance_paid in", values, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidNotIn(List<String> values) {
            addCriterion("whether_balance_paid not in", values, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidBetween(String value1, String value2) {
            addCriterion("whether_balance_paid between", value1, value2, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andWhetherBalancePaidNotBetween(String value1, String value2) {
            addCriterion("whether_balance_paid not between", value1, value2, "whetherBalancePaid");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIsNull() {
            addCriterion("payment_method is null");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIsNotNull() {
            addCriterion("payment_method is not null");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodEqualTo(String value) {
            addCriterion("payment_method =", value, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodNotEqualTo(String value) {
            addCriterion("payment_method <>", value, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodGreaterThan(String value) {
            addCriterion("payment_method >", value, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodGreaterThanOrEqualTo(String value) {
            addCriterion("payment_method >=", value, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodLessThan(String value) {
            addCriterion("payment_method <", value, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodLessThanOrEqualTo(String value) {
            addCriterion("payment_method <=", value, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodLike(String value) {
            addCriterion("payment_method like", value, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodNotLike(String value) {
            addCriterion("payment_method not like", value, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodIn(List<String> values) {
            addCriterion("payment_method in", values, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodNotIn(List<String> values) {
            addCriterion("payment_method not in", values, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodBetween(String value1, String value2) {
            addCriterion("payment_method between", value1, value2, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPaymentMethodNotBetween(String value1, String value2) {
            addCriterion("payment_method not between", value1, value2, "paymentMethod");
            return (Criteria) this;
        }

        public Criteria andPayBackDateIsNull() {
            addCriterion("pay_back_date is null");
            return (Criteria) this;
        }

        public Criteria andPayBackDateIsNotNull() {
            addCriterion("pay_back_date is not null");
            return (Criteria) this;
        }

        public Criteria andPayBackDateEqualTo(Date value) {
            addCriterionForJDBCDate("pay_back_date =", value, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPayBackDateNotEqualTo(Date value) {
            addCriterionForJDBCDate("pay_back_date <>", value, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPayBackDateGreaterThan(Date value) {
            addCriterionForJDBCDate("pay_back_date >", value, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPayBackDateGreaterThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("pay_back_date >=", value, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPayBackDateLessThan(Date value) {
            addCriterionForJDBCDate("pay_back_date <", value, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPayBackDateLessThanOrEqualTo(Date value) {
            addCriterionForJDBCDate("pay_back_date <=", value, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPayBackDateIn(List<Date> values) {
            addCriterionForJDBCDate("pay_back_date in", values, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPayBackDateNotIn(List<Date> values) {
            addCriterionForJDBCDate("pay_back_date not in", values, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPayBackDateBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("pay_back_date between", value1, value2, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPayBackDateNotBetween(Date value1, Date value2) {
            addCriterionForJDBCDate("pay_back_date not between", value1, value2, "payBackDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateIsNull() {
            addCriterion("payment_date is null");
            return (Criteria) this;
        }

        public Criteria andPaymentDateIsNotNull() {
            addCriterion("payment_date is not null");
            return (Criteria) this;
        }

        public Criteria andPaymentDateEqualTo(Date value) {
            addCriterion("payment_date =", value, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateNotEqualTo(Date value) {
            addCriterion("payment_date <>", value, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateGreaterThan(Date value) {
            addCriterion("payment_date >", value, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateGreaterThanOrEqualTo(Date value) {
            addCriterion("payment_date >=", value, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateLessThan(Date value) {
            addCriterion("payment_date <", value, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateLessThanOrEqualTo(Date value) {
            addCriterion("payment_date <=", value, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateIn(List<Date> values) {
            addCriterion("payment_date in", values, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateNotIn(List<Date> values) {
            addCriterion("payment_date not in", values, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateBetween(Date value1, Date value2) {
            addCriterion("payment_date between", value1, value2, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andPaymentDateNotBetween(Date value1, Date value2) {
            addCriterion("payment_date not between", value1, value2, "paymentDate");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountIsNull() {
            addCriterion("contract_total_payment_amount is null");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountIsNotNull() {
            addCriterion("contract_total_payment_amount is not null");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountEqualTo(BigDecimal value) {
            addCriterion("contract_total_payment_amount =", value, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountNotEqualTo(BigDecimal value) {
            addCriterion("contract_total_payment_amount <>", value, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountGreaterThan(BigDecimal value) {
            addCriterion("contract_total_payment_amount >", value, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_total_payment_amount >=", value, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountLessThan(BigDecimal value) {
            addCriterion("contract_total_payment_amount <", value, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_total_payment_amount <=", value, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountIn(List<BigDecimal> values) {
            addCriterion("contract_total_payment_amount in", values, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountNotIn(List<BigDecimal> values) {
            addCriterion("contract_total_payment_amount not in", values, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_total_payment_amount between", value1, value2, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalPaymentAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_total_payment_amount not between", value1, value2, "contractTotalPaymentAmount");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentIsNull() {
            addCriterion("whether_cooperate_development is null");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentIsNotNull() {
            addCriterion("whether_cooperate_development is not null");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentEqualTo(String value) {
            addCriterion("whether_cooperate_development =", value, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentNotEqualTo(String value) {
            addCriterion("whether_cooperate_development <>", value, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentGreaterThan(String value) {
            addCriterion("whether_cooperate_development >", value, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentGreaterThanOrEqualTo(String value) {
            addCriterion("whether_cooperate_development >=", value, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentLessThan(String value) {
            addCriterion("whether_cooperate_development <", value, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentLessThanOrEqualTo(String value) {
            addCriterion("whether_cooperate_development <=", value, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentLike(String value) {
            addCriterion("whether_cooperate_development like", value, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentNotLike(String value) {
            addCriterion("whether_cooperate_development not like", value, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentIn(List<String> values) {
            addCriterion("whether_cooperate_development in", values, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentNotIn(List<String> values) {
            addCriterion("whether_cooperate_development not in", values, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentBetween(String value1, String value2) {
            addCriterion("whether_cooperate_development between", value1, value2, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherCooperateDevelopmentNotBetween(String value1, String value2) {
            addCriterion("whether_cooperate_development not between", value1, value2, "whetherCooperateDevelopment");
            return (Criteria) this;
        }

        public Criteria andWhetherHangIsNull() {
            addCriterion("whether_hang is null");
            return (Criteria) this;
        }

        public Criteria andWhetherHangIsNotNull() {
            addCriterion("whether_hang is not null");
            return (Criteria) this;
        }

        public Criteria andWhetherHangEqualTo(String value) {
            addCriterion("whether_hang =", value, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangNotEqualTo(String value) {
            addCriterion("whether_hang <>", value, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangGreaterThan(String value) {
            addCriterion("whether_hang >", value, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangGreaterThanOrEqualTo(String value) {
            addCriterion("whether_hang >=", value, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangLessThan(String value) {
            addCriterion("whether_hang <", value, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangLessThanOrEqualTo(String value) {
            addCriterion("whether_hang <=", value, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangLike(String value) {
            addCriterion("whether_hang like", value, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangNotLike(String value) {
            addCriterion("whether_hang not like", value, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangIn(List<String> values) {
            addCriterion("whether_hang in", values, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangNotIn(List<String> values) {
            addCriterion("whether_hang not in", values, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangBetween(String value1, String value2) {
            addCriterion("whether_hang between", value1, value2, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andWhetherHangNotBetween(String value1, String value2) {
            addCriterion("whether_hang not between", value1, value2, "whetherHang");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractIsNull() {
            addCriterion("apply_electronic_contract is null");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractIsNotNull() {
            addCriterion("apply_electronic_contract is not null");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractEqualTo(String value) {
            addCriterion("apply_electronic_contract =", value, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractNotEqualTo(String value) {
            addCriterion("apply_electronic_contract <>", value, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractGreaterThan(String value) {
            addCriterion("apply_electronic_contract >", value, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractGreaterThanOrEqualTo(String value) {
            addCriterion("apply_electronic_contract >=", value, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractLessThan(String value) {
            addCriterion("apply_electronic_contract <", value, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractLessThanOrEqualTo(String value) {
            addCriterion("apply_electronic_contract <=", value, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractLike(String value) {
            addCriterion("apply_electronic_contract like", value, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractNotLike(String value) {
            addCriterion("apply_electronic_contract not like", value, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractIn(List<String> values) {
            addCriterion("apply_electronic_contract in", values, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractNotIn(List<String> values) {
            addCriterion("apply_electronic_contract not in", values, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractBetween(String value1, String value2) {
            addCriterion("apply_electronic_contract between", value1, value2, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andApplyElectronicContractNotBetween(String value1, String value2) {
            addCriterion("apply_electronic_contract not between", value1, value2, "applyElectronicContract");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdIsNull() {
            addCriterion("affiliation_company_id is null");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdIsNotNull() {
            addCriterion("affiliation_company_id is not null");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdEqualTo(String value) {
            addCriterion("affiliation_company_id =", value, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdNotEqualTo(String value) {
            addCriterion("affiliation_company_id <>", value, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdGreaterThan(String value) {
            addCriterion("affiliation_company_id >", value, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdGreaterThanOrEqualTo(String value) {
            addCriterion("affiliation_company_id >=", value, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdLessThan(String value) {
            addCriterion("affiliation_company_id <", value, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdLessThanOrEqualTo(String value) {
            addCriterion("affiliation_company_id <=", value, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdLike(String value) {
            addCriterion("affiliation_company_id like", value, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdNotLike(String value) {
            addCriterion("affiliation_company_id not like", value, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdIn(List<String> values) {
            addCriterion("affiliation_company_id in", values, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdNotIn(List<String> values) {
            addCriterion("affiliation_company_id not in", values, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdBetween(String value1, String value2) {
            addCriterion("affiliation_company_id between", value1, value2, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andAffiliationCompanyIdNotBetween(String value1, String value2) {
            addCriterion("affiliation_company_id not between", value1, value2, "affiliationCompanyId");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractIsNull() {
            addCriterion("master_membership_contract is null");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractIsNotNull() {
            addCriterion("master_membership_contract is not null");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractEqualTo(String value) {
            addCriterion("master_membership_contract =", value, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractNotEqualTo(String value) {
            addCriterion("master_membership_contract <>", value, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractGreaterThan(String value) {
            addCriterion("master_membership_contract >", value, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractGreaterThanOrEqualTo(String value) {
            addCriterion("master_membership_contract >=", value, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractLessThan(String value) {
            addCriterion("master_membership_contract <", value, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractLessThanOrEqualTo(String value) {
            addCriterion("master_membership_contract <=", value, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractLike(String value) {
            addCriterion("master_membership_contract like", value, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractNotLike(String value) {
            addCriterion("master_membership_contract not like", value, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractIn(List<String> values) {
            addCriterion("master_membership_contract in", values, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractNotIn(List<String> values) {
            addCriterion("master_membership_contract not in", values, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractBetween(String value1, String value2) {
            addCriterion("master_membership_contract between", value1, value2, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andMasterMembershipContractNotBetween(String value1, String value2) {
            addCriterion("master_membership_contract not between", value1, value2, "masterMembershipContract");
            return (Criteria) this;
        }

        public Criteria andContactIdIsNull() {
            addCriterion("contact_id is null");
            return (Criteria) this;
        }

        public Criteria andContactIdIsNotNull() {
            addCriterion("contact_id is not null");
            return (Criteria) this;
        }

        public Criteria andContactIdEqualTo(String value) {
            addCriterion("contact_id =", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdNotEqualTo(String value) {
            addCriterion("contact_id <>", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdGreaterThan(String value) {
            addCriterion("contact_id >", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdGreaterThanOrEqualTo(String value) {
            addCriterion("contact_id >=", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdLessThan(String value) {
            addCriterion("contact_id <", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdLessThanOrEqualTo(String value) {
            addCriterion("contact_id <=", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdLike(String value) {
            addCriterion("contact_id like", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdNotLike(String value) {
            addCriterion("contact_id not like", value, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdIn(List<String> values) {
            addCriterion("contact_id in", values, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdNotIn(List<String> values) {
            addCriterion("contact_id not in", values, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdBetween(String value1, String value2) {
            addCriterion("contact_id between", value1, value2, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactIdNotBetween(String value1, String value2) {
            addCriterion("contact_id not between", value1, value2, "contactId");
            return (Criteria) this;
        }

        public Criteria andContactNameIsNull() {
            addCriterion("contact_name is null");
            return (Criteria) this;
        }

        public Criteria andContactNameIsNotNull() {
            addCriterion("contact_name is not null");
            return (Criteria) this;
        }

        public Criteria andContactNameEqualTo(String value) {
            addCriterion("contact_name =", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameNotEqualTo(String value) {
            addCriterion("contact_name <>", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameGreaterThan(String value) {
            addCriterion("contact_name >", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameGreaterThanOrEqualTo(String value) {
            addCriterion("contact_name >=", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameLessThan(String value) {
            addCriterion("contact_name <", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameLessThanOrEqualTo(String value) {
            addCriterion("contact_name <=", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameLike(String value) {
            addCriterion("contact_name like", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameNotLike(String value) {
            addCriterion("contact_name not like", value, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameIn(List<String> values) {
            addCriterion("contact_name in", values, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameNotIn(List<String> values) {
            addCriterion("contact_name not in", values, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameBetween(String value1, String value2) {
            addCriterion("contact_name between", value1, value2, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactNameNotBetween(String value1, String value2) {
            addCriterion("contact_name not between", value1, value2, "contactName");
            return (Criteria) this;
        }

        public Criteria andContactDetailsIsNull() {
            addCriterion("contact_details is null");
            return (Criteria) this;
        }

        public Criteria andContactDetailsIsNotNull() {
            addCriterion("contact_details is not null");
            return (Criteria) this;
        }

        public Criteria andContactDetailsEqualTo(String value) {
            addCriterion("contact_details =", value, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsNotEqualTo(String value) {
            addCriterion("contact_details <>", value, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsGreaterThan(String value) {
            addCriterion("contact_details >", value, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsGreaterThanOrEqualTo(String value) {
            addCriterion("contact_details >=", value, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsLessThan(String value) {
            addCriterion("contact_details <", value, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsLessThanOrEqualTo(String value) {
            addCriterion("contact_details <=", value, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsLike(String value) {
            addCriterion("contact_details like", value, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsNotLike(String value) {
            addCriterion("contact_details not like", value, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsIn(List<String> values) {
            addCriterion("contact_details in", values, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsNotIn(List<String> values) {
            addCriterion("contact_details not in", values, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsBetween(String value1, String value2) {
            addCriterion("contact_details between", value1, value2, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andContactDetailsNotBetween(String value1, String value2) {
            addCriterion("contact_details not between", value1, value2, "contactDetails");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailIsNull() {
            addCriterion("customer_email is null");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailIsNotNull() {
            addCriterion("customer_email is not null");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailEqualTo(String value) {
            addCriterion("customer_email =", value, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailNotEqualTo(String value) {
            addCriterion("customer_email <>", value, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailGreaterThan(String value) {
            addCriterion("customer_email >", value, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailGreaterThanOrEqualTo(String value) {
            addCriterion("customer_email >=", value, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailLessThan(String value) {
            addCriterion("customer_email <", value, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailLessThanOrEqualTo(String value) {
            addCriterion("customer_email <=", value, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailLike(String value) {
            addCriterion("customer_email like", value, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailNotLike(String value) {
            addCriterion("customer_email not like", value, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailIn(List<String> values) {
            addCriterion("customer_email in", values, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailNotIn(List<String> values) {
            addCriterion("customer_email not in", values, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailBetween(String value1, String value2) {
            addCriterion("customer_email between", value1, value2, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andCustomerEmailNotBetween(String value1, String value2) {
            addCriterion("customer_email not between", value1, value2, "customerEmail");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdIsNull() {
            addCriterion("contract_annex_id is null");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdIsNotNull() {
            addCriterion("contract_annex_id is not null");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdEqualTo(String value) {
            addCriterion("contract_annex_id =", value, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdNotEqualTo(String value) {
            addCriterion("contract_annex_id <>", value, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdGreaterThan(String value) {
            addCriterion("contract_annex_id >", value, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdGreaterThanOrEqualTo(String value) {
            addCriterion("contract_annex_id >=", value, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdLessThan(String value) {
            addCriterion("contract_annex_id <", value, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdLessThanOrEqualTo(String value) {
            addCriterion("contract_annex_id <=", value, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdLike(String value) {
            addCriterion("contract_annex_id like", value, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdNotLike(String value) {
            addCriterion("contract_annex_id not like", value, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdIn(List<String> values) {
            addCriterion("contract_annex_id in", values, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdNotIn(List<String> values) {
            addCriterion("contract_annex_id not in", values, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdBetween(String value1, String value2) {
            addCriterion("contract_annex_id between", value1, value2, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractAnnexIdNotBetween(String value1, String value2) {
            addCriterion("contract_annex_id not between", value1, value2, "contractAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdIsNull() {
            addCriterion("review_annex_id is null");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdIsNotNull() {
            addCriterion("review_annex_id is not null");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdEqualTo(String value) {
            addCriterion("review_annex_id =", value, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdNotEqualTo(String value) {
            addCriterion("review_annex_id <>", value, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdGreaterThan(String value) {
            addCriterion("review_annex_id >", value, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdGreaterThanOrEqualTo(String value) {
            addCriterion("review_annex_id >=", value, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdLessThan(String value) {
            addCriterion("review_annex_id <", value, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdLessThanOrEqualTo(String value) {
            addCriterion("review_annex_id <=", value, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdLike(String value) {
            addCriterion("review_annex_id like", value, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdNotLike(String value) {
            addCriterion("review_annex_id not like", value, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdIn(List<String> values) {
            addCriterion("review_annex_id in", values, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdNotIn(List<String> values) {
            addCriterion("review_annex_id not in", values, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdBetween(String value1, String value2) {
            addCriterion("review_annex_id between", value1, value2, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andReviewAnnexIdNotBetween(String value1, String value2) {
            addCriterion("review_annex_id not between", value1, value2, "reviewAnnexId");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexIsNull() {
            addCriterion("contract_replenish_annex is null");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexIsNotNull() {
            addCriterion("contract_replenish_annex is not null");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexEqualTo(String value) {
            addCriterion("contract_replenish_annex =", value, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexNotEqualTo(String value) {
            addCriterion("contract_replenish_annex <>", value, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexGreaterThan(String value) {
            addCriterion("contract_replenish_annex >", value, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexGreaterThanOrEqualTo(String value) {
            addCriterion("contract_replenish_annex >=", value, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexLessThan(String value) {
            addCriterion("contract_replenish_annex <", value, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexLessThanOrEqualTo(String value) {
            addCriterion("contract_replenish_annex <=", value, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexLike(String value) {
            addCriterion("contract_replenish_annex like", value, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexNotLike(String value) {
            addCriterion("contract_replenish_annex not like", value, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexIn(List<String> values) {
            addCriterion("contract_replenish_annex in", values, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexNotIn(List<String> values) {
            addCriterion("contract_replenish_annex not in", values, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexBetween(String value1, String value2) {
            addCriterion("contract_replenish_annex between", value1, value2, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractReplenishAnnexNotBetween(String value1, String value2) {
            addCriterion("contract_replenish_annex not between", value1, value2, "contractReplenishAnnex");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountIsNull() {
            addCriterion("contract_total_amount is null");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountIsNotNull() {
            addCriterion("contract_total_amount is not null");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountEqualTo(BigDecimal value) {
            addCriterion("contract_total_amount =", value, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountNotEqualTo(BigDecimal value) {
            addCriterion("contract_total_amount <>", value, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountGreaterThan(BigDecimal value) {
            addCriterion("contract_total_amount >", value, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_total_amount >=", value, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountLessThan(BigDecimal value) {
            addCriterion("contract_total_amount <", value, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_total_amount <=", value, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountIn(List<BigDecimal> values) {
            addCriterion("contract_total_amount in", values, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountNotIn(List<BigDecimal> values) {
            addCriterion("contract_total_amount not in", values, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_total_amount between", value1, value2, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractTotalAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_total_amount not between", value1, value2, "contractTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountIsNull() {
            addCriterion("contract_actual_total_amount is null");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountIsNotNull() {
            addCriterion("contract_actual_total_amount is not null");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountEqualTo(BigDecimal value) {
            addCriterion("contract_actual_total_amount =", value, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountNotEqualTo(BigDecimal value) {
            addCriterion("contract_actual_total_amount <>", value, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountGreaterThan(BigDecimal value) {
            addCriterion("contract_actual_total_amount >", value, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_actual_total_amount >=", value, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountLessThan(BigDecimal value) {
            addCriterion("contract_actual_total_amount <", value, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_actual_total_amount <=", value, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountIn(List<BigDecimal> values) {
            addCriterion("contract_actual_total_amount in", values, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountNotIn(List<BigDecimal> values) {
            addCriterion("contract_actual_total_amount not in", values, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_actual_total_amount between", value1, value2, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractActualTotalAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_actual_total_amount not between", value1, value2, "contractActualTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountIsNull() {
            addCriterion("contract_discount_total_amount is null");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountIsNotNull() {
            addCriterion("contract_discount_total_amount is not null");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountEqualTo(BigDecimal value) {
            addCriterion("contract_discount_total_amount =", value, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountNotEqualTo(BigDecimal value) {
            addCriterion("contract_discount_total_amount <>", value, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountGreaterThan(BigDecimal value) {
            addCriterion("contract_discount_total_amount >", value, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_discount_total_amount >=", value, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountLessThan(BigDecimal value) {
            addCriterion("contract_discount_total_amount <", value, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountLessThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_discount_total_amount <=", value, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountIn(List<BigDecimal> values) {
            addCriterion("contract_discount_total_amount in", values, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountNotIn(List<BigDecimal> values) {
            addCriterion("contract_discount_total_amount not in", values, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_discount_total_amount between", value1, value2, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andContractDiscountTotalAmountNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_discount_total_amount not between", value1, value2, "contractDiscountTotalAmount");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberIsNull() {
            addCriterion("payment_number is null");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberIsNotNull() {
            addCriterion("payment_number is not null");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberEqualTo(Integer value) {
            addCriterion("payment_number =", value, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberNotEqualTo(Integer value) {
            addCriterion("payment_number <>", value, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberGreaterThan(Integer value) {
            addCriterion("payment_number >", value, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberGreaterThanOrEqualTo(Integer value) {
            addCriterion("payment_number >=", value, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberLessThan(Integer value) {
            addCriterion("payment_number <", value, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberLessThanOrEqualTo(Integer value) {
            addCriterion("payment_number <=", value, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberIn(List<Integer> values) {
            addCriterion("payment_number in", values, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberNotIn(List<Integer> values) {
            addCriterion("payment_number not in", values, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberBetween(Integer value1, Integer value2) {
            addCriterion("payment_number between", value1, value2, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andPaymentNumberNotBetween(Integer value1, Integer value2) {
            addCriterion("payment_number not between", value1, value2, "paymentNumber");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusIsNull() {
            addCriterion("exchange_status is null");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusIsNotNull() {
            addCriterion("exchange_status is not null");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusEqualTo(String value) {
            addCriterion("exchange_status =", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusNotEqualTo(String value) {
            addCriterion("exchange_status <>", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusGreaterThan(String value) {
            addCriterion("exchange_status >", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusGreaterThanOrEqualTo(String value) {
            addCriterion("exchange_status >=", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusLessThan(String value) {
            addCriterion("exchange_status <", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusLessThanOrEqualTo(String value) {
            addCriterion("exchange_status <=", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusLike(String value) {
            addCriterion("exchange_status like", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusNotLike(String value) {
            addCriterion("exchange_status not like", value, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusIn(List<String> values) {
            addCriterion("exchange_status in", values, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusNotIn(List<String> values) {
            addCriterion("exchange_status not in", values, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusBetween(String value1, String value2) {
            addCriterion("exchange_status between", value1, value2, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andExchangeStatusNotBetween(String value1, String value2) {
            addCriterion("exchange_status not between", value1, value2, "exchangeStatus");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordIsNull() {
            addCriterion("owned_exchange_record is null");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordIsNotNull() {
            addCriterion("owned_exchange_record is not null");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordEqualTo(String value) {
            addCriterion("owned_exchange_record =", value, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordNotEqualTo(String value) {
            addCriterion("owned_exchange_record <>", value, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordGreaterThan(String value) {
            addCriterion("owned_exchange_record >", value, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordGreaterThanOrEqualTo(String value) {
            addCriterion("owned_exchange_record >=", value, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordLessThan(String value) {
            addCriterion("owned_exchange_record <", value, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordLessThanOrEqualTo(String value) {
            addCriterion("owned_exchange_record <=", value, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordLike(String value) {
            addCriterion("owned_exchange_record like", value, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordNotLike(String value) {
            addCriterion("owned_exchange_record not like", value, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordIn(List<String> values) {
            addCriterion("owned_exchange_record in", values, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordNotIn(List<String> values) {
            addCriterion("owned_exchange_record not in", values, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordBetween(String value1, String value2) {
            addCriterion("owned_exchange_record between", value1, value2, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOwnedExchangeRecordNotBetween(String value1, String value2) {
            addCriterion("owned_exchange_record not between", value1, value2, "ownedExchangeRecord");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdIsNull() {
            addCriterion("opportunity_id is null");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdIsNotNull() {
            addCriterion("opportunity_id is not null");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdEqualTo(String value) {
            addCriterion("opportunity_id =", value, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdNotEqualTo(String value) {
            addCriterion("opportunity_id <>", value, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdGreaterThan(String value) {
            addCriterion("opportunity_id >", value, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdGreaterThanOrEqualTo(String value) {
            addCriterion("opportunity_id >=", value, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdLessThan(String value) {
            addCriterion("opportunity_id <", value, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdLessThanOrEqualTo(String value) {
            addCriterion("opportunity_id <=", value, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdLike(String value) {
            addCriterion("opportunity_id like", value, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdNotLike(String value) {
            addCriterion("opportunity_id not like", value, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdIn(List<String> values) {
            addCriterion("opportunity_id in", values, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdNotIn(List<String> values) {
            addCriterion("opportunity_id not in", values, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdBetween(String value1, String value2) {
            addCriterion("opportunity_id between", value1, value2, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andOpportunityIdNotBetween(String value1, String value2) {
            addCriterion("opportunity_id not between", value1, value2, "opportunityId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdIsNull() {
            addCriterion("follow_record_id is null");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdIsNotNull() {
            addCriterion("follow_record_id is not null");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdEqualTo(String value) {
            addCriterion("follow_record_id =", value, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdNotEqualTo(String value) {
            addCriterion("follow_record_id <>", value, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdGreaterThan(String value) {
            addCriterion("follow_record_id >", value, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdGreaterThanOrEqualTo(String value) {
            addCriterion("follow_record_id >=", value, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdLessThan(String value) {
            addCriterion("follow_record_id <", value, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdLessThanOrEqualTo(String value) {
            addCriterion("follow_record_id <=", value, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdLike(String value) {
            addCriterion("follow_record_id like", value, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdNotLike(String value) {
            addCriterion("follow_record_id not like", value, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdIn(List<String> values) {
            addCriterion("follow_record_id in", values, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdNotIn(List<String> values) {
            addCriterion("follow_record_id not in", values, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdBetween(String value1, String value2) {
            addCriterion("follow_record_id between", value1, value2, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andFollowRecordIdNotBetween(String value1, String value2) {
            addCriterion("follow_record_id not between", value1, value2, "followRecordId");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesIsNull() {
            addCriterion("contract_receivables is null");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesIsNotNull() {
            addCriterion("contract_receivables is not null");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesEqualTo(BigDecimal value) {
            addCriterion("contract_receivables =", value, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesNotEqualTo(BigDecimal value) {
            addCriterion("contract_receivables <>", value, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesGreaterThan(BigDecimal value) {
            addCriterion("contract_receivables >", value, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesGreaterThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_receivables >=", value, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesLessThan(BigDecimal value) {
            addCriterion("contract_receivables <", value, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesLessThanOrEqualTo(BigDecimal value) {
            addCriterion("contract_receivables <=", value, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesIn(List<BigDecimal> values) {
            addCriterion("contract_receivables in", values, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesNotIn(List<BigDecimal> values) {
            addCriterion("contract_receivables not in", values, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_receivables between", value1, value2, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractReceivablesNotBetween(BigDecimal value1, BigDecimal value2) {
            addCriterion("contract_receivables not between", value1, value2, "contractReceivables");
            return (Criteria) this;
        }

        public Criteria andContractCategoryIsNull() {
            addCriterion("contract_category is null");
            return (Criteria) this;
        }

        public Criteria andContractCategoryIsNotNull() {
            addCriterion("contract_category is not null");
            return (Criteria) this;
        }

        public Criteria andContractCategoryEqualTo(Integer value) {
            addCriterion("contract_category =", value, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andContractCategoryNotEqualTo(Integer value) {
            addCriterion("contract_category <>", value, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andContractCategoryGreaterThan(Integer value) {
            addCriterion("contract_category >", value, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andContractCategoryGreaterThanOrEqualTo(Integer value) {
            addCriterion("contract_category >=", value, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andContractCategoryLessThan(Integer value) {
            addCriterion("contract_category <", value, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andContractCategoryLessThanOrEqualTo(Integer value) {
            addCriterion("contract_category <=", value, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andContractCategoryIn(List<Integer> values) {
            addCriterion("contract_category in", values, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andContractCategoryNotIn(List<Integer> values) {
            addCriterion("contract_category not in", values, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andContractCategoryBetween(Integer value1, Integer value2) {
            addCriterion("contract_category between", value1, value2, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andContractCategoryNotBetween(Integer value1, Integer value2) {
            addCriterion("contract_category not between", value1, value2, "contractCategory");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusIsNull() {
            addCriterion("delete_status is null");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusIsNotNull() {
            addCriterion("delete_status is not null");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusEqualTo(Short value) {
            addCriterion("delete_status =", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusNotEqualTo(Short value) {
            addCriterion("delete_status <>", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusGreaterThan(Short value) {
            addCriterion("delete_status >", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusGreaterThanOrEqualTo(Short value) {
            addCriterion("delete_status >=", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusLessThan(Short value) {
            addCriterion("delete_status <", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusLessThanOrEqualTo(Short value) {
            addCriterion("delete_status <=", value, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusIn(List<Short> values) {
            addCriterion("delete_status in", values, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusNotIn(List<Short> values) {
            addCriterion("delete_status not in", values, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusBetween(Short value1, Short value2) {
            addCriterion("delete_status between", value1, value2, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andDeleteStatusNotBetween(Short value1, Short value2) {
            addCriterion("delete_status not between", value1, value2, "deleteStatus");
            return (Criteria) this;
        }

        public Criteria andReviewerIdIsNull() {
            addCriterion("reviewer_id is null");
            return (Criteria) this;
        }

        public Criteria andReviewerIdIsNotNull() {
            addCriterion("reviewer_id is not null");
            return (Criteria) this;
        }

        public Criteria andReviewerIdEqualTo(String value) {
            addCriterion("reviewer_id =", value, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdNotEqualTo(String value) {
            addCriterion("reviewer_id <>", value, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdGreaterThan(String value) {
            addCriterion("reviewer_id >", value, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdGreaterThanOrEqualTo(String value) {
            addCriterion("reviewer_id >=", value, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdLessThan(String value) {
            addCriterion("reviewer_id <", value, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdLessThanOrEqualTo(String value) {
            addCriterion("reviewer_id <=", value, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdLike(String value) {
            addCriterion("reviewer_id like", value, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdNotLike(String value) {
            addCriterion("reviewer_id not like", value, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdIn(List<String> values) {
            addCriterion("reviewer_id in", values, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdNotIn(List<String> values) {
            addCriterion("reviewer_id not in", values, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdBetween(String value1, String value2) {
            addCriterion("reviewer_id between", value1, value2, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerIdNotBetween(String value1, String value2) {
            addCriterion("reviewer_id not between", value1, value2, "reviewerId");
            return (Criteria) this;
        }

        public Criteria andReviewerNameIsNull() {
            addCriterion("reviewer_name is null");
            return (Criteria) this;
        }

        public Criteria andReviewerNameIsNotNull() {
            addCriterion("reviewer_name is not null");
            return (Criteria) this;
        }

        public Criteria andReviewerNameEqualTo(String value) {
            addCriterion("reviewer_name =", value, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameNotEqualTo(String value) {
            addCriterion("reviewer_name <>", value, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameGreaterThan(String value) {
            addCriterion("reviewer_name >", value, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameGreaterThanOrEqualTo(String value) {
            addCriterion("reviewer_name >=", value, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameLessThan(String value) {
            addCriterion("reviewer_name <", value, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameLessThanOrEqualTo(String value) {
            addCriterion("reviewer_name <=", value, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameLike(String value) {
            addCriterion("reviewer_name like", value, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameNotLike(String value) {
            addCriterion("reviewer_name not like", value, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameIn(List<String> values) {
            addCriterion("reviewer_name in", values, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameNotIn(List<String> values) {
            addCriterion("reviewer_name not in", values, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameBetween(String value1, String value2) {
            addCriterion("reviewer_name between", value1, value2, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewerNameNotBetween(String value1, String value2) {
            addCriterion("reviewer_name not between", value1, value2, "reviewerName");
            return (Criteria) this;
        }

        public Criteria andReviewTimeIsNull() {
            addCriterion("review_time is null");
            return (Criteria) this;
        }

        public Criteria andReviewTimeIsNotNull() {
            addCriterion("review_time is not null");
            return (Criteria) this;
        }

        public Criteria andReviewTimeEqualTo(Date value) {
            addCriterion("review_time =", value, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andReviewTimeNotEqualTo(Date value) {
            addCriterion("review_time <>", value, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andReviewTimeGreaterThan(Date value) {
            addCriterion("review_time >", value, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andReviewTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("review_time >=", value, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andReviewTimeLessThan(Date value) {
            addCriterion("review_time <", value, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andReviewTimeLessThanOrEqualTo(Date value) {
            addCriterion("review_time <=", value, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andReviewTimeIn(List<Date> values) {
            addCriterion("review_time in", values, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andReviewTimeNotIn(List<Date> values) {
            addCriterion("review_time not in", values, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andReviewTimeBetween(Date value1, Date value2) {
            addCriterion("review_time between", value1, value2, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andReviewTimeNotBetween(Date value1, Date value2) {
            addCriterion("review_time not between", value1, value2, "reviewTime");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountIsNull() {
            addCriterion("payment_account is null");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountIsNotNull() {
            addCriterion("payment_account is not null");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountEqualTo(String value) {
            addCriterion("payment_account =", value, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountNotEqualTo(String value) {
            addCriterion("payment_account <>", value, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountGreaterThan(String value) {
            addCriterion("payment_account >", value, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountGreaterThanOrEqualTo(String value) {
            addCriterion("payment_account >=", value, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountLessThan(String value) {
            addCriterion("payment_account <", value, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountLessThanOrEqualTo(String value) {
            addCriterion("payment_account <=", value, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountLike(String value) {
            addCriterion("payment_account like", value, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountNotLike(String value) {
            addCriterion("payment_account not like", value, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountIn(List<String> values) {
            addCriterion("payment_account in", values, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountNotIn(List<String> values) {
            addCriterion("payment_account not in", values, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountBetween(String value1, String value2) {
            addCriterion("payment_account between", value1, value2, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andPaymentAccountNotBetween(String value1, String value2) {
            addCriterion("payment_account not between", value1, value2, "paymentAccount");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdIsNull() {
            addCriterion("create_people_id is null");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdIsNotNull() {
            addCriterion("create_people_id is not null");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdEqualTo(String value) {
            addCriterion("create_people_id =", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotEqualTo(String value) {
            addCriterion("create_people_id <>", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdGreaterThan(String value) {
            addCriterion("create_people_id >", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdGreaterThanOrEqualTo(String value) {
            addCriterion("create_people_id >=", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdLessThan(String value) {
            addCriterion("create_people_id <", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdLessThanOrEqualTo(String value) {
            addCriterion("create_people_id <=", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdLike(String value) {
            addCriterion("create_people_id like", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotLike(String value) {
            addCriterion("create_people_id not like", value, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdIn(List<String> values) {
            addCriterion("create_people_id in", values, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotIn(List<String> values) {
            addCriterion("create_people_id not in", values, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdBetween(String value1, String value2) {
            addCriterion("create_people_id between", value1, value2, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreatePeopleIdNotBetween(String value1, String value2) {
            addCriterion("create_people_id not between", value1, value2, "createPeopleId");
            return (Criteria) this;
        }

        public Criteria andCreateTmIsNull() {
            addCriterion("create_tm is null");
            return (Criteria) this;
        }

        public Criteria andCreateTmIsNotNull() {
            addCriterion("create_tm is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTmEqualTo(Date value) {
            addCriterion("create_tm =", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmNotEqualTo(Date value) {
            addCriterion("create_tm <>", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmGreaterThan(Date value) {
            addCriterion("create_tm >", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmGreaterThanOrEqualTo(Date value) {
            addCriterion("create_tm >=", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmLessThan(Date value) {
            addCriterion("create_tm <", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmLessThanOrEqualTo(Date value) {
            addCriterion("create_tm <=", value, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmIn(List<Date> values) {
            addCriterion("create_tm in", values, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmNotIn(List<Date> values) {
            addCriterion("create_tm not in", values, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmBetween(Date value1, Date value2) {
            addCriterion("create_tm between", value1, value2, "createTm");
            return (Criteria) this;
        }

        public Criteria andCreateTmNotBetween(Date value1, Date value2) {
            addCriterion("create_tm not between", value1, value2, "createTm");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdIsNull() {
            addCriterion("update_people_id is null");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdIsNotNull() {
            addCriterion("update_people_id is not null");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdEqualTo(String value) {
            addCriterion("update_people_id =", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotEqualTo(String value) {
            addCriterion("update_people_id <>", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdGreaterThan(String value) {
            addCriterion("update_people_id >", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdGreaterThanOrEqualTo(String value) {
            addCriterion("update_people_id >=", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdLessThan(String value) {
            addCriterion("update_people_id <", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdLessThanOrEqualTo(String value) {
            addCriterion("update_people_id <=", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdLike(String value) {
            addCriterion("update_people_id like", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotLike(String value) {
            addCriterion("update_people_id not like", value, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdIn(List<String> values) {
            addCriterion("update_people_id in", values, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotIn(List<String> values) {
            addCriterion("update_people_id not in", values, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdBetween(String value1, String value2) {
            addCriterion("update_people_id between", value1, value2, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdatePeopleIdNotBetween(String value1, String value2) {
            addCriterion("update_people_id not between", value1, value2, "updatePeopleId");
            return (Criteria) this;
        }

        public Criteria andUpdateTmIsNull() {
            addCriterion("update_tm is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTmIsNotNull() {
            addCriterion("update_tm is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTmEqualTo(Date value) {
            addCriterion("update_tm =", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmNotEqualTo(Date value) {
            addCriterion("update_tm <>", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmGreaterThan(Date value) {
            addCriterion("update_tm >", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmGreaterThanOrEqualTo(Date value) {
            addCriterion("update_tm >=", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmLessThan(Date value) {
            addCriterion("update_tm <", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmLessThanOrEqualTo(Date value) {
            addCriterion("update_tm <=", value, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmIn(List<Date> values) {
            addCriterion("update_tm in", values, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmNotIn(List<Date> values) {
            addCriterion("update_tm not in", values, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmBetween(Date value1, Date value2) {
            addCriterion("update_tm between", value1, value2, "updateTm");
            return (Criteria) this;
        }

        public Criteria andUpdateTmNotBetween(Date value1, Date value2) {
            addCriterion("update_tm not between", value1, value2, "updateTm");
            return (Criteria) this;
        }

        public Criteria andOrderIdIsNull() {
            addCriterion("order_id is null");
            return (Criteria) this;
        }

        public Criteria andOrderIdIsNotNull() {
            addCriterion("order_id is not null");
            return (Criteria) this;
        }

        public Criteria andOrderIdEqualTo(String value) {
            addCriterion("order_id =", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotEqualTo(String value) {
            addCriterion("order_id <>", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThan(String value) {
            addCriterion("order_id >", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdGreaterThanOrEqualTo(String value) {
            addCriterion("order_id >=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThan(String value) {
            addCriterion("order_id <", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLessThanOrEqualTo(String value) {
            addCriterion("order_id <=", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdLike(String value) {
            addCriterion("order_id like", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotLike(String value) {
            addCriterion("order_id not like", value, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdIn(List<String> values) {
            addCriterion("order_id in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotIn(List<String> values) {
            addCriterion("order_id not in", values, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdBetween(String value1, String value2) {
            addCriterion("order_id between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andOrderIdNotBetween(String value1, String value2) {
            addCriterion("order_id not between", value1, value2, "orderId");
            return (Criteria) this;
        }

        public Criteria andOldContractIsNull() {
            addCriterion("old_contract is null");
            return (Criteria) this;
        }

        public Criteria andOldContractIsNotNull() {
            addCriterion("old_contract is not null");
            return (Criteria) this;
        }

        public Criteria andOldContractEqualTo(String value) {
            addCriterion("old_contract =", value, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractNotEqualTo(String value) {
            addCriterion("old_contract <>", value, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractGreaterThan(String value) {
            addCriterion("old_contract >", value, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractGreaterThanOrEqualTo(String value) {
            addCriterion("old_contract >=", value, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractLessThan(String value) {
            addCriterion("old_contract <", value, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractLessThanOrEqualTo(String value) {
            addCriterion("old_contract <=", value, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractLike(String value) {
            addCriterion("old_contract like", value, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractNotLike(String value) {
            addCriterion("old_contract not like", value, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractIn(List<String> values) {
            addCriterion("old_contract in", values, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractNotIn(List<String> values) {
            addCriterion("old_contract not in", values, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractBetween(String value1, String value2) {
            addCriterion("old_contract between", value1, value2, "oldContract");
            return (Criteria) this;
        }

        public Criteria andOldContractNotBetween(String value1, String value2) {
            addCriterion("old_contract not between", value1, value2, "oldContract");
            return (Criteria) this;
        }

        public Criteria andImportErrorIsNull() {
            addCriterion("import_error is null");
            return (Criteria) this;
        }

        public Criteria andImportErrorIsNotNull() {
            addCriterion("import_error is not null");
            return (Criteria) this;
        }

        public Criteria andImportErrorEqualTo(String value) {
            addCriterion("import_error =", value, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorNotEqualTo(String value) {
            addCriterion("import_error <>", value, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorGreaterThan(String value) {
            addCriterion("import_error >", value, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorGreaterThanOrEqualTo(String value) {
            addCriterion("import_error >=", value, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorLessThan(String value) {
            addCriterion("import_error <", value, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorLessThanOrEqualTo(String value) {
            addCriterion("import_error <=", value, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorLike(String value) {
            addCriterion("import_error like", value, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorNotLike(String value) {
            addCriterion("import_error not like", value, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorIn(List<String> values) {
            addCriterion("import_error in", values, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorNotIn(List<String> values) {
            addCriterion("import_error not in", values, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorBetween(String value1, String value2) {
            addCriterion("import_error between", value1, value2, "importError");
            return (Criteria) this;
        }

        public Criteria andImportErrorNotBetween(String value1, String value2) {
            addCriterion("import_error not between", value1, value2, "importError");
            return (Criteria) this;
        }

        public Criteria andRefundStatusIsNull() {
            addCriterion("refund_status is null");
            return (Criteria) this;
        }

        public Criteria andRefundStatusIsNotNull() {
            addCriterion("refund_status is not null");
            return (Criteria) this;
        }

        public Criteria andRefundStatusEqualTo(Integer value) {
            addCriterion("refund_status =", value, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andRefundStatusNotEqualTo(Integer value) {
            addCriterion("refund_status <>", value, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andRefundStatusGreaterThan(Integer value) {
            addCriterion("refund_status >", value, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andRefundStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("refund_status >=", value, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andRefundStatusLessThan(Integer value) {
            addCriterion("refund_status <", value, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andRefundStatusLessThanOrEqualTo(Integer value) {
            addCriterion("refund_status <=", value, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andRefundStatusIn(List<Integer> values) {
            addCriterion("refund_status in", values, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andRefundStatusNotIn(List<Integer> values) {
            addCriterion("refund_status not in", values, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andRefundStatusBetween(Integer value1, Integer value2) {
            addCriterion("refund_status between", value1, value2, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andRefundStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("refund_status not between", value1, value2, "refundStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusIsNull() {
            addCriterion("maintain_status is null");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusIsNotNull() {
            addCriterion("maintain_status is not null");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusEqualTo(Integer value) {
            addCriterion("maintain_status =", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusNotEqualTo(Integer value) {
            addCriterion("maintain_status <>", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusGreaterThan(Integer value) {
            addCriterion("maintain_status >", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("maintain_status >=", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusLessThan(Integer value) {
            addCriterion("maintain_status <", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusLessThanOrEqualTo(Integer value) {
            addCriterion("maintain_status <=", value, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusIn(List<Integer> values) {
            addCriterion("maintain_status in", values, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusNotIn(List<Integer> values) {
            addCriterion("maintain_status not in", values, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusBetween(Integer value1, Integer value2) {
            addCriterion("maintain_status between", value1, value2, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andMaintainStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("maintain_status not between", value1, value2, "maintainStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusIsNull() {
            addCriterion("contact_review_status is null");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusIsNotNull() {
            addCriterion("contact_review_status is not null");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusEqualTo(String value) {
            addCriterion("contact_review_status =", value, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusNotEqualTo(String value) {
            addCriterion("contact_review_status <>", value, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusGreaterThan(String value) {
            addCriterion("contact_review_status >", value, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusGreaterThanOrEqualTo(String value) {
            addCriterion("contact_review_status >=", value, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusLessThan(String value) {
            addCriterion("contact_review_status <", value, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusLessThanOrEqualTo(String value) {
            addCriterion("contact_review_status <=", value, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusLike(String value) {
            addCriterion("contact_review_status like", value, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusNotLike(String value) {
            addCriterion("contact_review_status not like", value, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusIn(List<String> values) {
            addCriterion("contact_review_status in", values, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusNotIn(List<String> values) {
            addCriterion("contact_review_status not in", values, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusBetween(String value1, String value2) {
            addCriterion("contact_review_status between", value1, value2, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContactReviewStatusNotBetween(String value1, String value2) {
            addCriterion("contact_review_status not between", value1, value2, "contactReviewStatus");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeIsNull() {
            addCriterion("contract_other_type is null");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeIsNotNull() {
            addCriterion("contract_other_type is not null");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeEqualTo(String value) {
            addCriterion("contract_other_type =", value, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeNotEqualTo(String value) {
            addCriterion("contract_other_type <>", value, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeGreaterThan(String value) {
            addCriterion("contract_other_type >", value, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeGreaterThanOrEqualTo(String value) {
            addCriterion("contract_other_type >=", value, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeLessThan(String value) {
            addCriterion("contract_other_type <", value, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeLessThanOrEqualTo(String value) {
            addCriterion("contract_other_type <=", value, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeLike(String value) {
            addCriterion("contract_other_type like", value, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeNotLike(String value) {
            addCriterion("contract_other_type not like", value, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeIn(List<String> values) {
            addCriterion("contract_other_type in", values, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeNotIn(List<String> values) {
            addCriterion("contract_other_type not in", values, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeBetween(String value1, String value2) {
            addCriterion("contract_other_type between", value1, value2, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andContractOtherTypeNotBetween(String value1, String value2) {
            addCriterion("contract_other_type not between", value1, value2, "contractOtherType");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractIsNull() {
            addCriterion("upgrade_relate_contract is null");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractIsNotNull() {
            addCriterion("upgrade_relate_contract is not null");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractEqualTo(String value) {
            addCriterion("upgrade_relate_contract =", value, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractNotEqualTo(String value) {
            addCriterion("upgrade_relate_contract <>", value, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractGreaterThan(String value) {
            addCriterion("upgrade_relate_contract >", value, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractGreaterThanOrEqualTo(String value) {
            addCriterion("upgrade_relate_contract >=", value, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractLessThan(String value) {
            addCriterion("upgrade_relate_contract <", value, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractLessThanOrEqualTo(String value) {
            addCriterion("upgrade_relate_contract <=", value, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractLike(String value) {
            addCriterion("upgrade_relate_contract like", value, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractNotLike(String value) {
            addCriterion("upgrade_relate_contract not like", value, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractIn(List<String> values) {
            addCriterion("upgrade_relate_contract in", values, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractNotIn(List<String> values) {
            addCriterion("upgrade_relate_contract not in", values, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractBetween(String value1, String value2) {
            addCriterion("upgrade_relate_contract between", value1, value2, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateContractNotBetween(String value1, String value2) {
            addCriterion("upgrade_relate_contract not between", value1, value2, "upgradeRelateContract");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdIsNull() {
            addCriterion("upgrade_relate_finish_product_id is null");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdIsNotNull() {
            addCriterion("upgrade_relate_finish_product_id is not null");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdEqualTo(String value) {
            addCriterion("upgrade_relate_finish_product_id =", value, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdNotEqualTo(String value) {
            addCriterion("upgrade_relate_finish_product_id <>", value, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdGreaterThan(String value) {
            addCriterion("upgrade_relate_finish_product_id >", value, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdGreaterThanOrEqualTo(String value) {
            addCriterion("upgrade_relate_finish_product_id >=", value, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdLessThan(String value) {
            addCriterion("upgrade_relate_finish_product_id <", value, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdLessThanOrEqualTo(String value) {
            addCriterion("upgrade_relate_finish_product_id <=", value, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdLike(String value) {
            addCriterion("upgrade_relate_finish_product_id like", value, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdNotLike(String value) {
            addCriterion("upgrade_relate_finish_product_id not like", value, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdIn(List<String> values) {
            addCriterion("upgrade_relate_finish_product_id in", values, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdNotIn(List<String> values) {
            addCriterion("upgrade_relate_finish_product_id not in", values, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdBetween(String value1, String value2) {
            addCriterion("upgrade_relate_finish_product_id between", value1, value2, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }

        public Criteria andUpgradeRelateFinishProductIdNotBetween(String value1, String value2) {
            addCriterion("upgrade_relate_finish_product_id not between", value1, value2, "upgradeRelateFinishProductId");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {
        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}